home *** CD-ROM | disk | FTP | other *** search
- /* k 0224 23/09/91 */
- /* k 0226 24/09/91 */
- /* k 0227 26/09/91 *//* corrections for literals */
- /* k 0230 09/10/91 *//* assemble some data */
- /* k 0231 10/10/91 *//* resident module */
- /* k 0233 12/10/91 *//* Trn modules */
- /* k 0234 14/10/91 *//* OVL_TYPE */
- /* k 0235 18/10/91 *//* pswitch for showdata */
- /* k 0243 20/10/91 *//* common resources */
- /* k 0245 20/10/91 *//* statscreen */
- /* k 0247 22/10/91 */
- /* k 0254 31/10/91 *//* Status data */
- /* k 0262 11/1//91 *//* sk[5] for status */
- /* k 0264 12/11/91 *//* Codes */
- /* k 5001 18/11/91 */ /* from KIROV */
- /* k 0282 12/12/91 *//* from BSS */
- /* k 0292 23/12/91 *//* save initial path */
- /* k 0304 23/02/92 *//* extend path field */
- /* k 0306 24/02/92 *//* ddoff */
- /* k 0307 24/02/92 *//* 300-byte segments */
- /* k 0317 14/03/92 *//* delete emadapt.h */
- /* k 0320 22/03/92 *//* New initialization */
- /* k 1082 23/03/92 *//* definition bufvt,buflan */
- /* k 1083 25/03/92 *//* SOLARIS-2 adapter */
- /* k 0322 26/03/92 *//* Files menu */
- #include <include.h>
- #include <vt.h>
- #include <conio.h>
- /* @0317 */
- #include <bufmap.h>
- #include <dcr.h>
- #include <tbs.h> /* 5001 */
- #include <tabm.h>
- #include <popen39.h>
- #include <pget39.h>
- #include <pfree39.h>
- #include <pwrite39.h>
- #include <pread39.h>
- #include <bufdrv.h>
- #include <p3927c.h> /*ßΓpπ¬Γπpδ ææé ¿ ßΓpπ¬Γπpδ ñ«»«½¡¿Γѽ∞¡δσ »ápá¼ÑΓp«ó drvtrn39*/
- #include <p3926c.H> /* TRANSMIT */
- #include <p3928c.H> /* RECEIVE */
- #include <p390bc.H> /* BUFFER_GET */
- #include <p3915c.H> /* BUFFER_FREE */
- #include <p3915t.H> /* OPEN */
- #include <p3916c.H> /* CLOSE */
- #include <p3927t.H>
- #include <p3928t.H>
- #include <p390bt.H>
- #include <p3926t.H> /* 5001 */
- #define MAXDIR 66 /* @0322 */
- struct WORDREGS {
- unsigned int ax, bx, cx, dx, si, di, cflag, flags;
- };
-
- struct BYTEREGS {
- unsigned char al, ah, bl, bh, cl, ch, dl, dh;
- };
-
- union REGS {
- struct WORDREGS x;
- struct BYTEREGS h;
- };
-
- struct SREGS {
- unsigned int es;
- unsigned int cs;
- unsigned int ss;
- unsigned int ds;
- };
- struct buf_vt { /* @0233 */
- #if (OS_TYPE!=0) /* @0215 */
- unsigned char contents [4000]; /* @0208 */
- #endif /* @0215 */
- unsigned int cursor_size;
- int curx,cury,currmode; /* @0233 */
- unsigned char winleft,wintop,winright,winbottom;
- };
- extern int
- #if (OVL_TYPE==1)
- Trn_frame(),Trn_signon(),Trn_set(),Trn_logon(),Trn_data(),Trn_logoff(),
- Trn_data02(), /* @0235 */
- Trn_status(),Trn_vpexit(),Trn_data03(); /* @0322 */
- #else
- frame(),signon(),set(),logon(),data(),logoff(),
- status(),vpexit(),data03(); /* @0322 */
- extern int frame0(),frame1();
- extern int status0(),status1();
- extern int status2(),status3();
- extern int status4(),status5();
- extern int exit1(),exit0();
- extern int logoff0(),logoff1(),logoff2(),logoffgo(); /* 0014 */
- extern int data0(),data1(),data2(),data3(),data4(),data5();
- extern int data6(),data7(),data8(),data9(),data10(); /* @0060 */ /* @0057 */
- extern int data11(),data12(); /* @0061 */ /* @0060 */
- extern int logon0(),logon1(),logon2(),logon3(),logonexit();
- extern int signon0();
- extern int signon1();
- extern int signon2();
- extern int set0(),set1(),set2(),set3(),set4(),set5(),set6();
- #endif
- extern struct rqb *appl(),*path(),*sessa(),*fisc(),*csc(),*cpmgr();
- extern struct rqb *pu(),*dfc(),*pfrom(),*landlc(),*config(),
- #if (OVL_TYPE==1)
- *Trn_npinput();
- #else
- *npinput();
- #endif
- extern struct rqb *dlc7920(); /* 1001 */
- extern struct rqb *dlc7920s(); /* 1083 */
- extern struct rqb *dlctrn(); /* 1007 */
- extern struct rqb *dlctrn39(); /* 1007 */
- extern struct rqb *dlcasync(); /* 1051 */
- extern struct rqb
- #if (OVL_TYPE==1)
- *Trn_dataw_code();
- #else
- *dataw_code(); /* @0072 */
- #endif
- char *rentdos=NULL;
- short curs[5]={0},curx[5]={0},cury[5]={0}; /* 0014 */
- short cur_curs=0,cur_curx=0,cur_cury=0;
- #if (OVL_TYPE==0) /* @0233 */
- char *com1[7]={" sign","","","","logof","s",""};
- char letter[7]={'O','S','L','D','F','T','E'};
- char *com2[7]={"n","et","ogon","ata","","atus","xit"};
- char *key1[5]={" F1","ESC","^Home","^Fi","Alt-x"}; /* @0217 */
- char *key2[5]={"Help","Previous Menu","Main menu", /* @0217 */
- "Screen i", /* @0127 */
- #if (OS_TYPE==0) /* @0191 */
- "quit to DOS"};
- #else /* @0191 */
- "quit to shell"};
- #endif /* @0191 */
- char *text[7]={"Signon procedure (name, password, mode)",
- "Set procedure (logical screens, trace, statistic)",
- "Logon procedure (establish session)",
- "Data procedure (send and receive datagrams)",
- "Logoff procedure (terminate session)",
- "Status procedure (get information about VT)",
- "Exit (clear signon parameters)"};
- #endif
- short com_v=0;
- /* @0046 */ /* 0017 */
- /* @0046 */
- /* @0046 */
- char sw_wait=0x00; /* @0184 */
- char xwbuf[256]={0x00}; /* @0192 */
- char wbuf[256]={0x00}; /* @0192 */
- char wbufd[256]={0x00}; /* @0192 *//* @0243 */
- struct mat (*wmat)[3]={NULL}; /* @0054 */
- short ddfff=0; /* @0200 */ /* @0044 *//* @0159 */
- /* @0159 */
- char *filename={" "};/* @0060 */
- struct segoff { /* @0158 *//* @0158 */
- unsigned short seg; /* @0159 */ /* @0158 */
- unsigned short off; /* @0158 */ /* @0158 */
- }; /* @0159 */
- struct segoff (*dout)[512]={NULL}; /* @0158 *//* @0159 */
- long cseek=0, nseek=0, oldseek=0; /* @0157 @0158 *//* @0160 */
- char d_g[]="\\d"; /* @0174 *//* @0184 */
- unsigned short lasti=0,curi=0,curseg=0; /* @0159 */
- char mail[]="mail\\"; /* @0157 *//* @0304 */
- char dpp[60]={0x00}; /* @0306 */
- char ddpp[60]={0x00}; /* @0157 *//* @0243 *//* @0306 */
- char dtxt8[]=" "; /* TEMPORARY */
- char eoflag=0x00; /* @0161 */
- short type=0;
- short nida=0,oldnida=0; /* @0060 */ /* @0057 */
- struct rqb *nrda=NULL,*crda=NULL,
- *orda=NULL,*oldnrda=NULL; /* @0060 */ /* @0057 */
- short last=0; /* @0060 */
- unsigned short plj=0,lj=0;/* @0061 @0060 @0158 *//* @0159 */
- short fdd=0,fddd=0,le=0; /* @0159 */
- short dfdd=0; /* @0243 */
- unsigned char *tp=NULL; /* @0061 *//* @0184 */
- long sendno=0; /* @0072 */
- char scrn=0x00; /* 0017 */
- struct rqb *rqbp=NULL;
- struct segprf *segp=NULL;
- struct init3 *wp=NULL; /* @0050 */ /* 0017 */
- char rhhdr0[3]={0x63,0x80,0x00}; /* @0048 */
- char cond=0x00; /* 0017 */
- char name[8]="";
- short signbuf[5]={Bufsign1,Bufsign2,Bufsign3,
- Bufsign4,Bufsign5}; /* @0208 */
- short sigsw[5]={0,0,0,0,0}; /* @0029 */
- short ss[5]={0}; /* @0029 */
- char *pt1=NULL,*pt2=NULL,*pt3=NULL;
- unsigned char *rdos=NULL; /* @0201 */
- short msg28=0; /* @0201 */
- struct nau *vtnau=NULL; /* @0044 */
- char ch[26]={0};
- short l=0,j=0;
- short leng=0; /* @0044 */
- short px1=0,py1=0,px2=0,py2=0,pcurx=0,pcury=0,pxw=0,pyw=0;
- char *begpt=NULL,*curpt=NULL;
- char pattr='\0';
- union REGS reg={0};
- short offs=0;
- short hoffs=0; /* @0233 */
- short textcol[5]={0},backcol[5]={0}; /* 0014 */ /* 0017 */
- short msw2=0; /* @0221 */
- int akey=0,bkey=0;
- struct ekran {
- char icon;
- char attrib;
- };
- #if (OVL_TYPE==0) /* @0264 */
- char * ind_ENABLE [2] = {"DISABLE"," ENABLE"};
- char nodeptr[]=" Nodes "; /* @0266 */
- char nodehead[]="Name Addr Type"; /* @0266 */
- char dlcptr[]=" Links "; /* @0266 */
- char dlchead[]="Name Type"; /* @0266 */
- char ntype[]={0x10,0x20,0x30,0x01,0x02,0x04,0x09}; /* @0266 */
- char *nntype={"MY","OTHER","LVS","8431","8432","8434","8439"};
- char dtype[]={1,2,3,4,5,6,7,8,9}; /* 1083 @0266 */
- char *ddtype[]={"AKK","LAN","ASY","BSC","SDLC","7920","TRN","TRN39","7920S"};
- /* 1083 */
- #endif
- int attr_addr[1920]={0};
- char buffer [1920]={0x00}, attrib[16]={0x00};
- struct ekran screen [1920]={0};
- int cursor_pos=0,laddr=0, haddr=0,
- enable_flag_port=1,enable_flag_kbd=1,enable_flag_sys=1; /* @0317 */
- char *mix=NULL;
- int cursor_row=0, cursor_col=0;
- int ind_y=0;
- unsigned int enable_x1=0,enable_x2=0,insert_x=0,insert=0;
-
- int portkey=0;
-
- int swi=0;
-
- char colortable[256]={0x00};
- unsigned int oldcursor=0, shortcursor=0,
- tallcursor=0, nocursor=0x2000,vissegment=0;
- unsigned int baseport=0;
- struct save_7927 buf7927={0}; /* @0208 */
-
- struct buf_dos {
- #if (OS_TYPE!=0) /* @0215 */
- unsigned char contents [4000]; /* @0208 */
- #endif /* @0215 */
- unsigned int cursor_size;
- int curx,cury,currmode; /* @0233 */
- } buf2580={0};
-
- char fmindex[] = /* 255 means that profile is not allowed */
- {0, /* 0 */
- 255, /* 1 */
- 1, /* 2 */
- 2, /* 3 */
- 3, /* 4 */
- 4, /* 5 */
- 255, /* 6 */
- 5, /* 7 */
- 255,255,255,255,255,255,255,255,255, /* 8-16 */
- 6, /* 17 */
- 7}; /* 18 */
-
- char tsindex[] = /* 255 means that profile is not allowed */
- {255, /* 0 */
- 0, /* 1 */
- 1, /* 2 */
- 2, /* 3 */
- 3, /* 4 */
- 4, /* 5 */
- 255, /* 6 */
- 5, /* 7 */
- 255,255,255,255,255,255,255,255,255}; /* 8-16 */
-
- /* sessa */
- struct avt0 *avt=NULL; /* AVT table */ /* @0087 */
- unsigned char Flag28=0x00; /* @0201 */
- unsigned char Flagport=0x00; /* @0201 */
- unsigned char optflg=0x00,flag2=0x00,tf=0x00,sflag=0x00; /* @0203 */
- /* @0230 */
- struct prqb *first_rqb=NULL; /* @0023 */
- struct prqb *last_rqb=NULL; /* @0023 */
- struct wrktb tmp2tb[1]={0}; /* 1005 */
- char *ptr=NULL; /* @0088 */ /* @0023 */
- /* @0230 */
- short bfd=0; /* @0206 */
- struct srdt *ws=NULL;
- struct rdt *wr=NULL;
- struct mat *wn=NULL;
- struct dlctb *wd=NULL; /* @0043 */
- struct majtb *wm=NULL;
- struct aname (*wa)[3]={NULL};
- struct nau *wnau=NULL;
- /* @0205 */
- short rc=0; /* @0043 */
- /* @0304 */
- struct buf_vt bufvt2580={0}; /* @0215 *//* @0233 */
- char far *videobuf=NULL; /* @0207 */
- short sw1=0;
- short sw2[5]={0,0,0,0,0}; /* 0014 */
- short x1[5]={0},y1[5]={0},x2[5]={0},y2[5]={0}; /* 0014 */
- short escptr[5]={0}; /* @0206 */ /* 0014 */
- short esc=0;
- short hsw=0;
- short msw=0;
- short input=0;
- char escflg=0x00; /* @0046 */
- (*escrtn)()=NULL; /* @0046 */
- char save25[80]={0x00};
- short escape=256+94; /* escape code CTRL F1 */
- /* 0014 */
- char vt_flag=0x00;
- short scr_no=0;
- short unit[4]={2020,100,8,272}; /* @0307 */
- short nu=0;
- /* 0017 */
- short class=0;
- /* @0034 */
- struct rqb *bufp=NULL;
- short *pf=NULL;
- char dispflag='\0'; /* @0056 */
- char pww[16]={0x00}; /* @0071 */
- char outbuffer[1920]={0x00}; /* @0185 */
- struct out7920 *out7920=NULL;/* @0185 */
-
- int col=0; /* @0185 */
- int row=0; /* @0185 */
- int color=0; /* @0185 */
- int width=0; /* @0185 */
- /* va_list arg_list=0;*/ /* @0185 */
- struct parmglu *wglu=NULL;
- struct tmp2 *wtmp2=NULL;
- struct sess *wsess=NULL;
- struct majtb *wmtb=NULL;
- struct nausg *wnseg=NULL;
- struct segprf *wseg=NULL;
- struct th *wth=NULL;
- struct rh *wrh=NULL; /* @0157 */
- union ru *wru=NULL;
- struct hscb *whscb=NULL;
- struct lhscb *wlhscb=NULL;
- struct bind *wbind=NULL; /* 1003 */
- char out_buffer[1920]={0}; /* 1003 *//* @0175 */
- struct rqb *rrqb=0;
- int was_bufm=0;
- int was_vvodz=0;
- char opr[20]={0};
- /* 5001 */
-
- unsigned char a_to_e[256]={
- 0X00,0X01,0X02,0X03,0X37,0X2D,0X2E,0X2F,/*0*/
- 0x16,0x05,0x25,0x0b,0x0c,0x0d,0x0e,0x0f,
- 0X10,0X11,0X12,0X13,0X3C,0X3D,0X32,0X26,/*1*/
- 0x18,0x19,0x3f,0x27,0x1c,0x1d,0x1e,0x1f,
- 0X40,0X4F,0X7F,0X7B,0X5B,0X6C,0X50,0X7D,/*2*/
- 0x4d,0x5d,0x5c,0x4e,0x6b,0x60,0x4b,0x61,
- 0XF0,0XF1,0XF2,0XF3,0XF4,0XF5,0XF6,0XF7,/*3*/
- 0xf8,0xf9,0x7a,0x5e,0x4c,0x7e,0x6e,0x6f,
- 0X7C,0XC1,0XC2,0XC3,0XC4,0XC5,0XC6,0XC7,/*4*/
- 0xc8,0xc9,0xd1,0xd2,0xd3,0xd4,0xd5,0xd6,
- 0XD7,0XD8,0XD9,0XE2,0XE3,0XE4,0XE5,0XE6,/*5*/
- 0xe7,0xe8,0xe9,0x4a,0xe0,0x5a,0x5f,0x6d,
- 0X79,0X81,0X82,0X83,0X84,0X85,0X86,0X87,/*6*/
- 0x88,0x89,0x91,0x92,0x93,0x94,0x95,0x96,
- 0X97,0X98,0X99,0XA2,0XA3,0XA4,0XA5,0XA6,/*7*/
- 0xa7,0xa8,0xa9,0xc0,0x6a,0xd0,0xa1,0x07,
- #if (KOI8_TYPE == 0) /* Alternate coding */ /* @0181 */
- 0XC1,0XBA,0XC2,0XBF,0XBC,0XC5,0XEC,0XFA,/*8*/
- 0xcb,0xcc,0xd2,0xce,0xd4,0xc8,0xd6,0xdc,
- 0XD7,0XC3,0XE3,0XEB,0XBE,0XE7,0XBB,0XFE,/*9*/
- 0xfb,0xfd,0x7d,0xef,0xee,0xfc,0xb8,0xdd,
- 0X81,0X78,0XAF,0X8D,0X8A,0X85,0XAE,0XB2,/*A*/
- 0x8f,0x90,0x9a,0x9b,0x9c,0x9d,0x96,0x9f,
- 0X2B,0X2C,0X09,0X20,0X29,0X43,0X44,0X45,/*B*/
- 0x46,0x39,0x30,0x38,0x08,0x47,0x48,0x28,
- 0X23,0X24,0X06,0X21,0X15,0X2A,0X49,0X51,/*C*/
- 0x33,0x1a,0x34,0x36,0x31,0x35,0x3a,0x52,
- 0X53,0X54,0X56,0X57,0X62,0X63,0X64,0X65,/*D*/
- 0x66,0x17,0x22,0x14,0x04,0x0a,0x1b,0x3b,
- #else /* GOST */ /* @0181 */
- 0X2B,0X2C,0X09,0X20,0X29,0X43,0X44,0X45,/*8*/
- 0x46,0x39,0x30,0x38,0x08,0x47,0x48,0x28,
- 0X23,0X24,0X06,0X21,0X15,0X2A,0X49,0X51,/*9*/
- 0x33,0x1a,0x34,0x36,0x31,0x35,0x3a,0x52,
- 0X53,0X54,0X56,0X57,0X62,0X63,0X64,0X65,/*A*/
- 0x66,0x17,0x22,0x14,0x04,0x0a,0x1b,0x3b,
- 0XC1,0XBA,0XC2,0XBF,0XBC,0XC5,0XEC,0XFA,/*B*/
- 0xcb,0xcc,0xd2,0xce,0xd4,0xc8,0xd6,0xdc,
- 0XD7,0XC3,0XE3,0XEB,0XBE,0XE7,0XBB,0XFE,/*C*/
- 0xfb,0xfd,0x7d,0xef,0xee,0xfc,0xb8,0xdd,
- 0X81,0X78,0XAF,0X8D,0X8A,0X85,0XAE,0XB2,/*D*/
- 0x8f,0x90,0x9a,0x9b,0x9c,0x9d,0x96,0x9f,
- #endif /* @0181 */
- 0X97,0X83,0XAC,0XAD,0X8C,0XA7,0X80,0XB6,/*E*/
- 0xb3,0xb5,0xb7,0xb1,0xb0,0xb4,0x76,0xa0,
- 0XC5,0X85,0X62,0X63,0X64,0X65,0X66,0X67,/*F*/
- 0x68,0x69,0x70,0x71,0x72,0x73,0x74,0xff };
- unsigned char e_to_a[256]={ 0X00,0X01,0X02,0X03,0XDC,0X09,0XC2,0X7F,/*0*/
- 0xbc,0xb2,0xdd,0x0b,0x0c,0x0d,0x0e,0xff,
- 0X10,0X11,0X12,0X13,0XDB,0XC4,0X08,0XD9,/*1*/
- 0x18,0x19,0xc9,0xde,0x1c,0x1d,0x1e,0x1f,
- 0XB3,0XC3,0XDA,0XC0,0XC1,0X0A,0X17,0X1B,/*2*/
- 0xbf,0xb4,0xc5,0xb0,0xb1,0x05,0x06,0x07,
- 0XBA,0XCC,0X16,0XC8,0XCA,0XCD,0XCB,0X04,/*3*/
- 0xbb,0xb9,0xce,0xdf,0x14,0x15,0xfd,0x1a,
- 0X20,0XFA,0XF0,0XB5,0XB6,0XB7,0XB8,0XBD,/*4*/
- 0xbe,0xc6,0x5b,0x2e,0x3c,0x28,0x2b,0x21,
- 0X26,0XC7,0XCF,0XD0,0XD1,0XFB,0XD2,0XD3,/*5*/
- 0xfc,0xf1,0x5d,0x24,0x2a,0x29,0x3b,0x5e,
- 0X2D,0X2F,0XD4,0XD5,0XD6,0XD7,0XD8,0XF2,/*6*/
- 0xf3,0xf4,0x7c,0x2c,0x25,0x5f,0x3e,0x3f,
- #if (KOI8_TYPE==0) /* Alternate coding */ /* @0181 */
- 0XF5,0XF6,0XF7,0XF8,0XF9,0X9A,0XEE,0XA0,/*7*/
- 0xa1,0x60,0x3a,0x23,0x40,0x27,0x3d,0x22,
- 0XE6,0X61,0X62,0X63,0X64,0X65,0X66,0X67,/*8*/
- 0x68,0x69,0xa4,0xa5,0xe4,0xa3,0xe5,0xa8,
- 0XA9,0X6A,0X6B,0X6C,0X6D,0X6E,0X6F,0X70,/*9*/
- 0x71,0x72,0xaa,0xab,0xac,0xad,0xae,0xaf,
- 0XEF,0X7E,0X73,0X74,0X75,0X76,0X77,0X78,/*A*/
- 0x79,0x7a,0xe0,0xe1,0xe2,0xe3,0xa6,0xa2,
- 0XEC,0XEB,0XA7,0XE8,0XED,0XE9,0XE7,0XEA,/*B*/
- 0x9e,0x80,0x81,0x96,0x84,0x85,0x94,0x83,
- 0X7B,0X41,0X42,0X43,0X44,0X45,0X46,0X47,/*C*/
- 0x48,0x49,0x95,0x88,0x89,0x8a,0x8b,0x8c,
- 0X7D,0X4A,0X4B,0X4C,0X4D,0X4E,0X4F,0X50,/*D*/
- 0x51,0x52,0x8d,0x8e,0x8f,0x9f,0x90,0x91,
- 0X5C,0XCF,0X53,0X54,0X55,0X56,0X57,0X58,/*E*/
- 0x59,0x5a,0x92,0x93,0x86,0x82,0x9c,0x9b,
- 0X30,0X31,0X32,0X33,0X34,0X35,0X36,0X37,/*F*/
- 0x38,0x39,0x87,0x98,0x9d,0x99,0x97,0xff };
- #else /* GOST */ /* @0181 */
- 0XF5,0XF6,0XF7,0XF8,0XF9,0X9A,0XEE,0Xd0,/*7*/
- 0xd1,0x60,0x3a,0x23,0x40,0x27,0x3d,0x22,
- 0XE6,0X61,0X62,0X63,0X64,0X65,0X66,0X67,/*8*/
- 0x68,0x69,0xd4,0xd5,0xe4,0xd3,0xe5,0xd8,
- 0Xd9,0X6A,0X6B,0X6C,0X6D,0X6E,0X6F,0X70,/*9*/
- 0x71,0x72,0xda,0xdb,0xdc,0xdd,0xde,0xdf,
- 0XEF,0X7E,0X73,0X74,0X75,0X76,0X77,0X78,/*A*/
- 0x79,0x7a,0xe0,0xe1,0xe2,0xe3,0xd6,0xd2,
- 0XEC,0XEB,0Xd7,0XE8,0XED,0XE9,0XE7,0XEA,/*B*/
- 0xce,0xb0,0xb1,0xc6,0xb4,0xb5,0xc4,0xb3,
- 0X7B,0X41,0X42,0X43,0X44,0X45,0X46,0X47,/*C*/
- 0x48,0x49,0xc5,0xb8,0xb9,0xba,0xbb,0xbc,
- 0X7D,0X4A,0X4B,0X4C,0X4D,0X4E,0X4F,0X50,/*D*/
- 0x51,0x52,0xbd,0xbe,0xbf,0xcf,0xc0,0xc1,
- 0X5C,0XCF,0X53,0X54,0X55,0X56,0X57,0X58,/*E*/
- 0x59,0x5a,0xc2,0xc3,0xb6,0xb2,0xcc,0xcb,
- 0X30,0X31,0X32,0X33,0X34,0X35,0X36,0X37,/*F*/
- 0x38,0x39,0xb7,0xc8,0xcd,0xc9,0xc7,0xff };
- #endif /* @0181 */
- struct dcr dcr={0};
- struct dcr_el dcr_el={0};
- struct dcr ddcr={0}; /* @0243 */
- struct dcr_el ddcr_el={0}; /* @0243 */
- struct rqb *dataq=0;
- char user[8]={0x00}; /* @0157 */
- char duser[8]={0x00}; /* @0157 *//* @0243 */
- struct data2 *wda=NULL;
- int fff=0; /* @0157 *//* @0159 */
- int cry=0; /* @0186 */
- struct rqb *qrp=NULL; /* @0158 */
- struct dcr *d_crec=NULL; /* @0157 */
- struct dcr *dd_crec=NULL; /* @0157 *//* @0243 */
- struct dcr_el *del=NULL; /* @0157 */
- struct dcr_el *ddel=NULL; /* @0157 *//* @0243 */
- struct nextprev { /* @0159 */
- long next; /* @0159 */
- long prev; /* @0159 */
- } nextprev={0}; /* @0159 */
- long seek=0; /* @0157 *//* @0158 */
- short doff=0; /* @0157 */
- short ddoff=0; /* @0306 */
- unsigned char shiftfl=0x04; /* @0201 */
- struct naus0 *nps=NULL;
- #if (OVL_TYPE==1) /* @0234 */
- int (*(pswitch[10]))()={ /* @0322 */
- Trn_frame,Trn_signon,Trn_set,Trn_logon,Trn_data,
- Trn_logoff,Trn_status,Trn_vpexit,Trn_data02,Trn_data03};/* @0322 */
- #else
- int (*(pswitch[10]))()={ /* @0322 */
- frame,signon,set,logon,data,logoff,status,vpexit,
- data02,data03}; /* @0224 *//* @0322 */
- #endif
- char inithdr[3]={0x01,0x06,0x81}; /* @0048 */
- char termhdr[3]={0x01,0x06,0x83}; /* @0055 */
- #if (OVL_TYPE==0) /* @0233 */
- int (*(fswitch[2]))()={ /* @0224 */
- frame0, /* 0 */ /* @0224 */
- frame1, /* 1 */ /* @0224 */
- }; /* @0224 */
- char *statxt[3]={"Screen","Resource","Trace"}; /* @0216 */
- char hstatus[]="STATUS";
- int (*(stswitch[]))()={
- status0,
- status1, /* @0245 */
- status2, /* @0245 */
- status3, /* @0245 */
- status4, /* @0245 */
- status5 /* @0245 */
- };
- char *etxt[]={"Clear",
- "End of PORT"}; /* @0052 */
- char hexit[]="EXIT";
- int (*(eswitch[2]))()={
- exit0,
- exit1
- };
- char *offtext[3]={"Screen","Condition","Go"};
- char hlogof[9]=" LOGOFF ";
- int (*(lfswitch[3]))()={
- logoff0,
- logoff1,
- logoff2 /* 0014 */
- };
- char hdata[6]=" DATA ";
- /* @0159 */
- /* @0230 */
- char *datatxt[2]={"Send","Receive"};
- int (*(dswitch[]))()={
- data0, /* main menu */
- data1, /* analyze main menu */
- data2, /* analyze Send menu */
- data3, /* analyze Source menu */
- data4, /* analyze remote user or confirmation */
- data5, /* analyze input */ /* @0057 */
- data6, /* analyze file name */ /* @0057 */
- data7, /* analyze datagram list */ /* @0057 */
- data8, /* analyze what to do with datagram */ /* @0057 */
- data9, /* analyze displaydata */ /* @0060 */
- data10, /* analyxe filename for savedata */ /* @0060 */
- data11, /* analyze overwrite *//* 0061*/ /* @0060 */
- data12 /* continue output */ /* @0061 */
- };
- char *dtxt[4]={"Display","Print","Save","Delete"};
- char *dtxt3[2]={"NEW","File name"};
- char *dtxt2[3]={"Remote user","Confirm","Source"}; /* @0044 */
- short dar1[2]={4,7};
- char *pk1[4]={" F1","Esc","Ctrl End","Enter"};/* @0067 *//* @0060 *//* @0061 *//* @0072 */
- char *pk2[4]={"Help","Exit","Send text","New paragraf"};/* @0067 *//* @0060 */
- char *rk1[5]={" F1","PgUp","PgDn","Enter","Esc"};/* @0060 */ /* @0061 */
- char *rk2[5]={"Help","Previous","Next","Display","Exit"};/* @0060 *//* @0072 */
- char *dk1[5]={" F1","Esc","F2","F3","F4"}; /* @0060 */ /* @0061 */
- char *dk2[5]={"Help","Exit","Print","Delete","Save"}; /* @0060 */
- char *sk1[5]={" F1","Up","Down","Enter","Esc"}; /* @0262 */
- char hlogon[]=" LOGON ";
- int (*(lswitch[3]))()={
- logon0, /* 0 */
- logon1, /* 1 */
- logon2 /* 2 */ /* 0014 */
- };
- char hsignon[]=" SIGNON ";
- /* 0014 */
- char *sigtxt[7]={"User name","Password","Application","Mode name",
- "User data","Screen","Go"};
- int (*(sswitch[3]))()={
- signon0, /* 0 */
- signon1, /* 1 */
- signon2 /* 2 */ /* 0014 */
- };
- char hset[]=" SET ";
- char *settxt[4]={"VT modes","DLC modes","AP modes","Trace"}; /* @0203 */
- int (*(setswitch[]))()={
- set0, /* first routine */
- set1, /* analyze main menu */
- set2, /* analyze second level menu */
- set3, /* analyze Activata, Deactivate and Hot key */
- set4, /* analyze Name for DLC and AP */
- set5, /* analyze Y/N for Trace and Statistic */
- set6 /* analyze Screen, Save, Cond */
- };
- /* @0031 */
- char *(settxt0[3])={"Activate","Deactivate","Hot key"};
- char *(settxt1[4])={"Dispatcher","Sessions","I/O","Buffers"};
- /* @0203 */
- char *(settxt3[3])={"Screen","Save buffer","Go"};
- char *(settxt4[2])={"CTRL","ALT"};
- short setar1[5]={3,2,2,4,3};
- short setar2[5]={8,9,8,5,9};
- char *(setar3[4])={settxt0,settxt0,
- settxt0,settxt1 }; /* @0203 */
- short setar4[5]={16,19,21,23,27};
- short setar5[3]={3,3,2};
- short setar6[3]={8,10,7};
- char *((*setar7[3])[3])={(char *(*)[])&settxt3,
- (char *(*)[])&offtext,
- (char *(*)[])&settxt4};
- short setar8[3]={30,33,36};
- /* @0230 */
- #endif
- struct rqb *((*(funct_table[ST_N]))())={
- appl,
- path,
- sessa,
- fisc,
- csc,
- cpmgr,
- pu,
- dfc,
- pfrom,
- landlc,
- config,
- #if (OVL_TYPE==1) /* @0234 */
- Trn_npinput,
- #else
- npinput, /* 1001 */
- #endif
- dlc7920, /* 1001 */
- dlctrn, /* 1007 */
- dlctrn39, /* @0072 */ /* 1007 */
- #if (OVL_TYPE==1)
- Trn_dataw_code,
- #else
- dataw_code, /* @0072 */ /* 1051 */
- #endif
- dlcasync, /* 1051 */
- dlcasync, /* 1051 */
- dlcasync, /* 1083 */
- dlc7920s /* 1083 */
- };
- /* @0264 */
- #if (OVL_TYPE==0) /* @0264 */
- unsigned char togr[ ]={
- 0x20,0x41,0x42,0x43,0x44,0x45,0x46,0x47,0x48,0x49,0x5b,0x2e,0x3c,0x28,0x2b,0x21,
- 0x26,0x4a,0x4b,0x4c,0x4d,0x4e,0x4f,0x50,0x51,0x52,0x5d,0x24,0x2a,0x29,0x3b,0x5e,
- 0x2d,0x2f,0x53,0x54,0x55,0x56,0x57,0x58,0x59,0x5a,0x7c,0x2c,0x25,0x5f,0x3e,0x3f,
- 0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,0x3a,0x23,0x40,0x27,0x3d,0x22,
- };
- #endif
- #if (OS_TYPE!=0) /* @0233 */
- char hbuf[1080]={0x00};
- #endif
- char b_ins[]="INS";
- char twoblanks[]=" "; /* @0226 */
- char u2[]="%2u"; /* @0226 */
- char u4[]="%.4u"; /* @0226 */
- char u5[]="%5u"; /* @0226 */
- char pgdn[]="PgDn"; /* @0226 */
- char pgup[]="PgUp"; /* @0226 */
- char u[]="%u"; /* @0226 */
- #if (OVL_TYPE==0) /* @0233 */
- char hhead[5]="HELP";
- char portdos[]="PORT-DOS"; /* @0226 */
- char datagram[]="DATAGRAMS"; /* @0226 */
- char areaname[]="Area name Node name LU name"; /* @0226 */
- char datetime[]=" Date Time Size"; /* @0226 */
- char ays[]="Are you sure?Reply Y/N"; /* @0226 */
- char fae[]="File already exist.Overrun?(Y/N)"; /* @0226 */
- char scrhead[]="Screen Active/Inactive Session Remote AP name";
- char scrptr[]=" LOGICAL SCREENS "; /* @0245 */
- char active[]="ACTIVE"; /* @0247 */
- char inactive[]="INACTIVE";
- /* @0230 */
- #endif
- char yes[]="YES"; /* @0247 */
- char no[]="NO";
- #if (OVL_TYPE==0) /* @0264 */
- unsigned char russ_table[ ] = {
- 0x41,0xE2,0x42,0xE7,0xE4,0x45,0xF6,0xFA, /* 128-135 */
- 0xE9,0xEA,0x4B,0xEC,0x4D,0x48,0x4F,0xF0, /* 136-143 */
- 0x50,0x43,0x54,0xF5,0xE6,0x58,0xE3,0xFE, /* 144-151 */
- 0xFB,0xFD,0x27,0xF9,0xF8,0xFC,0xE0,0xF1, /* 152-159 */
- 0x61,0xC2,0xD7,0xC7,0xC4,0x65,0xD6,0xDA, /* 160-167 */
- 0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0x6F,0xD0, /* 168-175 */
- 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20, /* 176-183 */
- 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20, /* 184-191 */
- 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20, /* 192-199 */
- 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20, /* 200-207 */
- 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20, /* 208-215 */
- 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20, /* 216-223 */
- 0x70,0x63,0xD4,0x79,0xC6,0x78,0xC3,0xDE, /* 224-231 */
- 0xDB,0xDD,0xDF,0xD9,0xD8,0xDC,0xC0,0xD1, /* 232-239 */
- 0x45,0x65,0x20,0x20,0x20,0x20,0x20,0x20, /* 240-247 */
- 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20}; /* 248-255 */
- #endif /* @0264 */
-
- char rbshdr[3]={0x43,0x06,0x0A}; /* ru-header RBS */ /* 1005 */
- char rhhdr[3]={0x0b,0x80,0x00}; /* rh-header */ /* 1008 */
- char rrbshdr[3]={0x43,0x06,0x1A}; /* ru-header RRBS */ /* 1008 */
- char drlhdr[3]={0x43,0x06,0x02}; /* 1005 */
- char rlihdr[3]={0x43,0x06,0x12};
-
- char BIND1[25] = /* image BIND 1016 */
- {0x01, /* 0 */ /* 1016 */
- 0x03, /* 1 */ /* 1016 */
- 0x03, /* 2 */ /* 1016 */
- 0xa0, /* 3 */ /* 1016 */
- 0xd0, /* 4 */ /* 1016 */
- 0x20, /* 5 */ /* 1016 */
- 0x80, /* 6 */ /* 1016 */
- 0x00,0x00, /* 7 */ /* 1016 */
- 0x85,0x85, /* 8-9 */ /* 1016 */
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 1016 */
- 0x00,0x00,0x00,0x00}; /* 10-24 */ /* 1016 */
- char vt[]="VT "; /* @0226 */
- char l_s[]="LS-"; /* @0226 */
- char bindhdr[3]={0x6B,0x80,0x00};
- char bindfhdr[3]={0x81,0x06,0x85};
- short wver=0x0003; /* version 1010 */
- #if (OVL_TYPE==0) /* @0264 */
- char ENABLE[]="ENABLE"; /* @0227 */
- char DISABLE[]="DISABLE"; /* @0227 */
- #endif
- int vis_attr=0; /* @0227 */
- short help28=0; /* @0233 */
- #if (OVL_TYPE==0) /* @0254 */
- char *atype[]={"SNA","LEN","LAN","PSN"};
- char areahead[]="Addr Name Act/Inact Status Type Nodes Links This node";
- char address[]="address"; /* @0248 */
- char *sttxt2[]={"System","AP","VT"}; /* @0254 */
- char *sttxt3[]={"Areas","Glu names","User names"}; /* @0254 */
- #endif /* @0254 */
- struct ovpp { /* 5001 */
- struct rqb *wrqb; /* 5001 */
- void *xmit_queue_one; /* 5001 */
- }; /* 5001 */
- typedef struct {
- char address[18];
- }PRD;
- typedef struct {
- short buffer[2000];
- }DIR;
- typedef struct {
- short buffer_pool[3000];
- char buf_id;
- }DLC;
- typedef struct {
- short id_station;
- char count;
- }XMTWO;
- typedef struct {
- XMTWO *xm2;
- short rezerv;
- short length_in_buffer;
- short user_data;
- short user_length;
- char user_space[50]; /* 5001 */
- }XMONE;
- typedef struct {
- char id_station1;
- char id_station2;
- char id_station3;
- char id_station4;
- char id_station5;
- char id_station6;
- }DEST;
- typedef struct {
- char blok[58];
- char buf_entr[255];
- } BUFDRV;
- typedef struct {
- char outbuf[255];
- }ONE;
- typedef struct {
- char buf_begin;
- char buf_end;
- }TWO;
- typedef struct {
- short station_id; /*¿ñÑ¡Γ¿Σ¿¬áΓ«p ßΓᡵ¿¿*/
- short buffer_left; /*¬«½¿τÑßΓó« «ßΓáóΦ¿σß∩ íπΣÑp«ó*/
- char buffer_get; /*¬«½¿τÑßΓó« íπΣÑp«ó ñ½∩ »«½πτÑ¡¿∩*/
- char res[3];
- ONE *xm1; /*áñpÑß »Ñpó«ú« »p¿¡∩Γ«ú« íπΣÑpá*/
- }TGET;
- typedef struct {
- short station_id;
- short buffer_left;
- char reserv[4];
- ONE *xm1;
- }TFREE;
- typedef struct {
- short sap_station_id;
- short link_station_id;
- char timer_t1;
- char timer_t2;
- char timer_ti;
- char maxout;
- char maxin;
- char maxout_incr;
- char max_retry_cnt;
- char rsap_value;
- short max_i_field;
- char access_priority;
- char nul;
- DEST *pdad;
- }TOPEN;
- typedef struct {
- short station_id;
- char transmit_fs;
- char rsap;
- XMONE *xm1;
- XMTWO *xm2;
- short buffer_len_one;
- short buffer_len_two;
- ONE *pbo;
- TWO *pbt;
- }TWRITE;
- typedef struct {
- int point_id;
- }POINT;
- typedef struct {
- char adapter;
- char node_address[6];
- short num_rsv_buffers;
- short rcv_buffer_len;
- short dnb_buffer_len;
- char data_hold_buf;
- PRD * pia;
- short dir_buf_size;
- short dir_pool_blocks;
- DIR *buf1;
- char dlc_max_sta;
- void *received_data;
- short *open_data;
- char maxout;
- char maxin;
- char station_count;
- short dlc_buf_size;
- short dlc_pool_len;
- DLC *buf2;
- }OPEN;
- typedef struct {
- short station_id[255];
- short *close_data;
- }CLOSE;
- typedef struct {
- char command;
- short station_id;
- XMONE *xm1;
- XMTWO *xm2;
- short buffer_len_one;
- short buffer_len_two;
- ONE *pbo;
- TWO *pbt;
- short *close_data;
- }WRITE;
- typedef struct {
- short sap_station_id;
- char maxout;
- char maxin;
- char rsap_value;
- char access_priority;
- DEST *dad;
- short *ioctl_data;
- short station_id;
- char option;
- short *received_data;
- }OPEN_STATION;
- typedef struct {
- short station_id_1b;
- short *route ;
- short *connect_data;
- }CONNECT_STATION;
- typedef struct {
- short station_id;
- short *close_station_data;
- }CLOSE_STATION;
- typedef struct {
- short station_id;
- char buffer_get;
- short *get_data;
- }GET;
- typedef struct {
- short station_id;
- ONE *pbo;
- short *free_data;
- }FREE;
- typedef struct {
- char ccb_adapter;
- char ccb_command;
- char ccb_retcode;
- char ccb_work;
- POINT *pnt;
- void *cplt;
- void *tab;
- } CCB;
- typedef struct {
- void *buf_pointer;
- short rcv_len;
- short length_in_buffer;
- short adapter_offset;
- short user_length;
- short station_id;
- char options;
- char message_type;
- short buffer_left;
- char rcv_fs;
- char adapter_num;
- char lan_header_length;
- char dlc_header_length;
- struct {
- unsigned char ac;
- unsigned char fc;
- char dnode_addr[6];
- char onode_addr[6];
- struct {
- unsigned dl:5;
- unsigned tm:3;
- unsigned rs:4;
- unsigned dk:1;
- unsigned nk:3;
- short ukm1;
- short ukm2;
- short ukm3;
- short ukm4;
- short ukm5;
- short ukm6;
- short ukm7;
- short ukm8;
- }im;
- }lan_header;
- long dlc_header;
- char rcvd_data;
- }RECEIVE_BUF1;
- typedef struct{
- void *buf_pointer;
- short rcv_len;
- short length_in_buffer;
- short adapter_offset;
- short user_length;
- char rcvd_data;
- }RECEIVE_BUF2;
- /* CCB *PCCB=NULL; /* 0282 */
- BUFDRV *PBUF=NULL;
-
- char buffree[8]={0}; /* 5001 */
- char buftrn39[6500]={0}; /* 5001 */
- int cmd=0;
- char PR1_NODE_ADDR[6]={0}; /* 5001 */
- short PR1_ST_ID_15=NULL;
- short PR1_LINK_ST_ID_19[9]={0};
- char mxid[20]={0,0,0,0,0,0,0,0,0xb0,8,0,0,0,0,0,0,0,0,0x0b,0x71};
- char wovpp[40]={0};
- char tbs[128*sizeof(struct tbs)]={0};
- char tabm[1024*sizeof(struct tabm)]={0};
- char adapter=NULL;
- short station_id15=NULL;
-
- /*void *PBUF=NULL;*/
- void *CMD_CPLT=NULL;
- void *REC_DATA=NULL;
- OPEN parm_open={0};
- CLOSE parm_close={0};
- WRITE parm_write={0};
- OPEN_STATION parm_open_station={0};
- CONNECT_STATION parm_connect_station={0};
- CLOSE_STATION parm_close_station={0};
- GET parm_get={0};
- FREE parm_free={0};
- PRD product_id_addr={0};
- DIR dir_pool_address={0};
- DLC dlc_pool_addr={0};
- POINT ccb_pointer={0};
- XMONE *xmit_queue_one=NULL;
- XMTWO *xmit_queue_two=NULL;
- DEST dest_addr={0};
- BUFDRV bufer={0}; /* 5001 */
- DLC *dlc=NULL; /* 5001 */
-
- OPEN *pop=NULL;
- CLOSE *pcl=NULL;
- WRITE *pwr=NULL;
- OPEN_STATION *post=NULL;
- CONNECT_STATION *pcnst=NULL;
- CLOSE_STATION *pcst=NULL;
- GET *pgt=NULL;
- FREE *pft=NULL;
- DEST *det=NULL;
- TGET *ccb_get=NULL;
- TFREE *ccb_free=NULL;
- TOPEN *ccb_open=NULL;
- TWRITE *ccb_write=NULL;
- ONE *buffer_one=NULL;
- TWO *buffer_two=NULL;
- CCB *parm_ccb=NULL;
-
- char *PCCB39=NULL; /* 5001 */
- struct BUFDRV *PBUF39=NULL; /* 5001 */
- short (* REC_DRV_DATA1)(); /*π¬áºáΓѽ∞ ¡á »/» »α¿Ñ¼á ñá¡¡δσ*/
- short (* REC_DRV_DATA)(); /*π¬áºáΓѽ∞ ¡á »/» ºáóÑαΦÑ¡¿∩ ¬«¼á¡ñδ »α¿Ñ¼á*/
- short (* CMD_DRV)(); /*π¬áºáΓѽ∞ ¡á »/» ºáóÑαΦÑ¡¿∩ ¬«¼á¡ñ*/
-
-
- char *UCCB=NULL; /*ôèÇçÇÆàï£ èÄäÇ ææé.âïÄüÇï£ìǃ ÅàÉàîàììǃ äïƒ DRVINT.ASM*/
- char buf16[16]={0};
- char buf15[16]={0};
- char buft15[30]={0};
- char buf27[16]={0};
- char buft27[12]={0};
- char buf28[16]={0};
- char buft28[13]={0};
- char buf0b[16]={0};
- char buft0b[24]={0};
- char buf26[16]={0};
- char buft26[12]={0};
-
- struct ccb15s *u15ccb=NULL;
- struct tab15s *tab15u=NULL;
-
- struct ccb27s *u27ccb=NULL;
- struct tab27s *tab27u=NULL;
-
- struct ccb16s *u16ccb=NULL;
-
- struct ccb28s *u28ccb=NULL;
- struct tab28s *tab28u=NULL;
-
- struct ccb0bs *u0bccb=NULL;
- struct tab0bs *tab0bu=NULL;
-
- struct tab26s *tab26u=NULL;
- struct ccb26s *u26ccb=NULL; /* 5001 */
- struct crec {
- void far *asc_rcv_exit;
- short asc_speed;
- unsigned char asc_width ; /* word width */
- unsigned char asc_parity; /* port & parity */
- unsigned char asc_stops; /* number of stop bits */
- } rec={0};
- union REGS inregs={0}, outregs={0};
- struct SREGS segregs={0};
- char MSG[101]={0x00};
- */ /* @0282 */
- short fd=0; /* @0231 */
- char portpath[60]={0x00}; /* @0292 *//* @0304 */
- unsigned char bufvt=0x00; /* 1082 */
- unsigned char buflan=0x00; /* 1082 */
- unsigned int pspseg=0; /* @0320 */
- char mbreak=0x00; /* @0320 */
- char *dosbreak=0; /* @0320 */
- char *mdta=0; /* @0320 */
- long *dosdta=0; /* @0320 */
- int *dospid=0; /* @0320 */
- long sample=0x5555aaaa; /* @0320 */
- char *old65=0; /* @0320 */
- char *ydta=0; /* @0320 */
- int ypsp=0; /* @0320 */
- char *old24=0; /* @0320 */
- struct FILELIST { /* @0322 */
- int current;
- int first;
- int findoff;
- int total;
- int files;
- int dirs;
- int curspos;
- int insert;
- int offset;
- char cdir[MAXDIR+13];
- unsigned char sw1,sw2,sw3;
- } FL={0,0,0,0,0,0,0,0,0,NULL,0,0,0};
- /* O V E R L A Y */
- #if (OVL_TYPE==1)
- #include "overl.h"
- #endif
-